package com.内部类.静态内部类;

public class staticInnerClassExercise01 {
    public static void main(String[] args) {
        Test01 t = new Test01();
        Test01.Inner r = t.new Inner();
        System.out.println(r.a);
    }
}
class Test01{
    public Test01() {
        Inner s1 = new Inner();
        s1.a = 10;
        Inner s2 = new Inner();
        System.out.println(s2.a);
    }

    class Inner{  // 成员内部类
        public int a = 5;
    }
}
/***
 * 1.Test01 t = new Test01();
 * 进入到构造器：
 *  Inner s1 = new Inner(); // 创建一个内部类对象s1；
 *         s1.a = 10;  // 给s1对象的a赋值10；
 *         Inner s2 = new Inner();  // 创建另一个内部类对象s2；
 *         System.out.println(s2.a);  // 输出s2的a的值；5，因为Inner类的a是默认的5.
 *         //s1和 s2是两个不同的对象，所以s1.a和s2.a是两个不同的变量，所以s1.a和s2.a的值是独立的。
 *
 * 2. Test01.Inner r = t.new Inner();  //创建新的内部类对象r；初始化r的a的值为5；
 *  3.System.out.println(r.a);输出r的a的值；5
 */